/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.buzz.student.entity;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.google.common.collect.Lists;

import com.jeeplus.core.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;
import com.jeeplus.modules.basedata.banji.entity.Banji;
import com.jeeplus.modules.basedata.grade.entity.Grade;
import com.jeeplus.modules.basedata.jiaoshiguanli.entity.Jiaoshiguanli;
import com.jeeplus.modules.basedata.school.entity.School;
import com.jeeplus.modules.basedata.studyofficer.entity.Studyofficer;
import com.jeeplus.modules.sys.entity.Office;

/**
 * 学生登记	Entity
 * @author 陈
 * @version 2025-06-23
 */
public class Student extends DataEntity<Student> {

	private static final long serialVersionUID = 1L;
	private String 			name;				// 学生姓名
	private String 			sex;				// 性别
	private School 			schoo;				// 就读学校
	private Grade 			grade;				// 就读年级
	private Banji			banji;				// 就读班级
	private Studyofficer 	bangan;				// 班干
	private Jiaoshiguanli 	room;				// 教室名称
	private String 			roomname;			// 教室名称
	private String 			Birthdaytype;		// 生日类型
	private Date 			Birthday;			// 生日日期
	private String 	card;		// 证件号
	private String 	xuehao;		// 学号
	private Integer age;		// 年龄
	private String 	guominbeizhu;		// 过敏备注
	private String 	bingshibeizhu;		// 病史备注
	private String 	xinyuanbeizhu;		// 心愿备注
	private String 	classid;		// 单据
	private Office 	company;		// 公司
	private Integer count;
	private List<Studententry> studententryList = Lists.newArrayList();		// 子表列表

	public Student() {
		super();
	}

	public Student(String id){
		super(id);
	}

	@ExcelField(title="学生姓名", align=2, sort=7)
	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@ExcelField(title="性别", align=2, sort=8)
	public String getSex() {
		return sex;
	}

	public void setSex(String sex) {
		this.sex = sex;
	}

	@ExcelField(title="生日类型", align=2, sort=9)
	public String getBirthdaytype() {
		return Birthdaytype;
	}

	public void setBirthdaytype(String Birthdaytype) {
		this.Birthdaytype = Birthdaytype;
	}

	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="生日日期", align=2, sort=10)
	public Date getBirthday() {
		return Birthday;
	}

	public void setBirthday(Date Birthday) {
		this.Birthday = Birthday;
	}

	@ExcelField(title="就读学校", align=2, sort=11)
	public School getSchoo() {
		return schoo;
	}

	public void setSchoo(School schoo) {
		this.schoo = schoo;
	}

	@ExcelField(title="就读年级", align=2, sort=12)
	public Grade getGrade() {
		return grade;
	}

	public void setGrade(Grade grade) {
		this.grade = grade;
	}

	@ExcelField(title="就读班级", align=2, sort=13)
	public Banji getBanji() {
		return banji;
	}

	public void setBanji(Banji banji) {
		this.banji = banji;
	}

	@ExcelField(title="班干", align=2, sort=14)
	public Studyofficer getBangan() {
		return bangan;
	}

	public void setBangan(Studyofficer bangan) {
		this.bangan = bangan;
	}

	@ExcelField(title="证件号", align=2, sort=15)
	public String getCard() {
		return card;
	}

	public void setCard(String card) {
		this.card = card;
	}

	@ExcelField(title="学号", align=2, sort=16)
	public String getXuehao() {
		return xuehao;
	}

	public void setXuehao(String xuehao) {
		this.xuehao = xuehao;
	}

	@ExcelField(title="年龄", align=2, sort=17)
	public Integer getAge() {
		return age;
	}

	public void setAge(Integer age) {
		this.age = age;
	}

	@ExcelField(title="过敏备注", align=2, sort=18)
	public String getGuominbeizhu() {
		return guominbeizhu;
	}

	public void setGuominbeizhu(String guominbeizhu) {
		this.guominbeizhu = guominbeizhu;
	}

	@ExcelField(title="病史备注", align=2, sort=19)
	public String getBingshibeizhu() {
		return bingshibeizhu;
	}

	public void setBingshibeizhu(String bingshibeizhu) {
		this.bingshibeizhu = bingshibeizhu;
	}

	@ExcelField(title="心愿备注", align=2, sort=20)
	public String getXinyuanbeizhu() {
		return xinyuanbeizhu;
	}

	public void setXinyuanbeizhu(String xinyuanbeizhu) {
		this.xinyuanbeizhu = xinyuanbeizhu;
	}

	@ExcelField(title="单据", align=2, sort=21)
	public String getClassid() {
		return classid;
	}

	public void setClassid(String classid) {
		this.classid = classid;
	}

	@ExcelField(title="公司", align=2, sort=22)
	public Office getCompany() {
		return company;
	}

	public void setCompany(Office company) {
		this.company = company;
	}

	public List<Studententry> getStudententryList() {
		return studententryList;
	}

	public void setStudententryList(List<Studententry> studententryList) {
		this.studententryList = studententryList;
	}

	public Integer getCount() {
		return count;
	}

	public void setCount(Integer count) {
		this.count = count;
	}

	public Jiaoshiguanli getRoom() {
		return room;
	}

	public void setRoom(Jiaoshiguanli room) {
		this.room = room;
	}

	public String getRoomname() {
		return roomname;
	}

	public void setRoomname(String roomname) {
		this.roomname = roomname;
	}
}
